package com.daqian.chance.qiniu.oss.service;

import com.daqian.chance.qiniu.oss.po.vo.OssParamsVO;
import com.qiniu.util.StringMap;

/**
 * @Author: daqian
 * @Date: 2019/11/26 20:13
 */
public interface QiniuOssService {

    OssParamsVO generateQiniuOssToken();

    OssParamsVO generateQiniuOssToken(String module);

    OssParamsVO generateQiniuOssToken(String module, String key, String keySuffix);

    OssParamsVO generateQiniuOssToken(String module, StringMap policy);

    OssParamsVO generateQiniuOssToken(String module, String key, String keySuffix, long expires, StringMap policy);

    /**
     * 生成七牛ossToken
     * @param bucket    空间名
     * @param module    文件模块
     * @param key       文件名
     * @param keySuffix 文件名后缀
     * @param expires   存在的时间 单位/秒
     * @param policy    七牛上传策略；官方文档：https://developer.qiniu.com/kodo/manual/1206/put-policy
     * @return java.lang.String
     * @author daqian
     * @date 2019/11/26 12:15
     */
    OssParamsVO generateQiniuOssToken(String bucket, String module, String key, String keySuffix, long expires, StringMap policy);

}
